【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题

您所在的位置:网站首页 docker 镜像库connection refused 【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题

【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题

2024-07-14 22:53| 来源: 网络整理| 查看: 265

【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题 原创

小锋学长生活大爆炸 2024-01-15 12:06:09 博主文章分类:爬坑之旅 ©著作权

文章标签 docker mysql 容器 redis 文章分类 JavaScript 前端开发

©著作权归作者所有:来自51CTO博客作者小锋学长生活大爆炸的原创作品,请联系作者获取转载授权,否则将追究法律责任

背景说明

        docker安装了某个镜像,如某个web。然后镜像中的应用在安装时候,报错无法连接mysql。

解决方法

(这套方法其实也实现了允许mysql远程访问)

1、修改mysql配置文件中的绑定地址为允许任何来源的连接:

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题_容器

然后保存并重启mysql:

sudo service mysql restart

2、修改mysql为允许任何来源的连接:

use mysql; select user,host from user; update user set host='%' where user='root'; FLUSH PRIVILEGES; exit

【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题_mysql_02

3、查看并记下docker的ip:

ifconfig

【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题_redis_03

4、将应用的mysql地址改为这个ip:

【踩坑】4步解决docker中mysql无法连接SQLSTATE[HY000] [2002] Connection refused以及开启远程访问的问题_容器_04

扩展思考

        举一反三,其他的情况也可以参考这套方法,比如docker应用+主机redis,也是redis开bind为0.0.0.0,然后ip改为docker eth0的。

收藏 评论 分享 举报

上一篇:【教程】Typecho Joe主题开启并修复壁纸相册不显示问题

下一篇:【福利】简单记录免费的卡密系统



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3